#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
//创建节点结构体:
typedef int SLDatatype;
typedef struct SLNode
{
	SLDatatype data;
	struct SLNode* next;
}node;

//打印:
void SLTPrint(node* phead);

//头插
void SLTPushBack(node** pphead, SLDatatype x);

//尾插
void SLTPushFront(node* phead, SLDatatype x);

//尾删:
void SLTPopBack(node**phead);

//头删:
void SLTPopFront(node** pphead);

//查找数据:
node* SLTFind(node* phead,SLDatatype x);

//在指定位置之前插入数据:
void* SLTInsert(node** pphead, node* pos, SLDatatype x);

//删除指定位置节点
void SLTErase(node** pphead, node* pos);

//在指定位置之后插⼊数据
void SLTInsertAfter(node* pos, SLDatatype x);

//删除pos之后的节点
void SLTEraseAfter(node* pos);

//销毁链表
void SListDesTroy(node** pphead);